# 第一阶段：构建Vue项目
FROM node:20-alpine AS builder

# 设置工作目录
WORKDIR /app

# 复制package.json和pnpm-lock.yaml（如果存在）
COPY package*.json ./
COPY pnpm-lock.yaml* ./

# 安装依赖（使用淘宝镜像源）
RUN npm install -g pnpm && pnpm config set registry https://registry.npmmirror.com && pnpm install || npm install --registry=https://registry.npmmirror.com

# 复制项目文件
COPY . .

# 构建项目
RUN npm run build

# 第二阶段：使用Nginx部署
FROM nginx

# 复制构建好的文件到Nginx的默认静态文件目录
COPY --from=builder /app/dist /usr/share/nginx/html

# 复制自定义的Nginx配置文件
COPY nginx.conf /etc/nginx/conf.d/default.conf

# 暴露端口
EXPOSE 80

# 启动Nginx（使用shell格式避免参数解析问题）
CMD nginx -g 'daemon off;'